const digitDic = '0123456789'
const upperDic = 'ABCEDFGHIJKLMNOPQRSTUVWXYZ'
const lowerDic = 'abcdefghijklmnopqrstuvwxyz'

/**
 *
 * @param length 随机长度
 * @param letterCase
 * 1. 'letter' 字母；
 * 2. 'digit' 数字；
 * 3. null | undefined，字母+数字；
 * 4. 'upper' 大写字母；
 * 5. 'upper+digit' 大写字母 + 数字；
 * 6. 'lower' 小写字母；
 * 7. 'lower+digit' 大写字母 + 数字；
 */
export function randomAlphabet(length: number = 6, letterCase?: string | number) {
	let useDic
	if (letterCase === 1 || letterCase === 'letter') useDic = upperDic + lowerDic
	else if (letterCase === 2 || letterCase === 'digit') useDic = digitDic
	else if (letterCase === 4 || letterCase === 'upper') useDic = upperDic
	else if (letterCase === 5 || letterCase === 'upper+digit') useDic = upperDic + digitDic
	else if (letterCase === 6 || letterCase === 'lower') useDic = lowerDic
	else if (letterCase === 7 || letterCase === 'lower+digit') useDic = lowerDic + digitDic
	else useDic = upperDic + lowerDic + digitDic
	let result = ''
	for (let i = 0; i < length; i++) {
		const index = ~~(Math.random() * useDic.length)
		result += useDic[index]
	}
	return result
}

